package ru.romannep.pc.chopperbattle;

/**
 * Пуля. Имеет в полях родителя - вертолета, и поле inGame - показывающее жива
 * ли пуля. Умирает при столкновениях.
 */
public class GameBullet extends MovingGameElement {

    public GameChopper chopper;
    public boolean inGame;

    public GameBullet(GameChopper chopper, float x, float y, float speedX, float speedY) {
        super(GameElementTypes.BULLET, x, y, ChopperBattleGameEngine.BULLET_SIZE, ChopperBattleGameEngine.BULLET_SIZE, 0, speedX, speedY, 0, 0);
        this.chopper = chopper;
        inGame = true;
    }

    @Override
    protected boolean onContact(GameElement obj, ContactEdge contactEdge) {
        if (inGame) {
            chopper.destroyBullet(this);
            inGame = false;
        }
        return false;
    }

    @Override
    protected void incomingContact(GameElement obj, ContactEdge contactEdge) {
        if (inGame) {
            chopper.destroyBullet(this);
            inGame = false;
        }
    }
}
